import pygame.font


class Scoreboard():
    """显示得分信息"""
    
    def __init__(self, pysettings, screen):
        """初始化显示得分属性"""
        self.screen = screen
        self.screen_rect = screen.get_rect()
        self.pysettings = pysettings
        
        # 显示得分信息时使用的字休设置
        self.text_color = (30, 30, 30)
        self.font = pygame.font.SysFont(None, 48)
        
        self.prep_score()
        
    def prep_score(self):
        score_str = str(self.pysettings.level) + "," + str(self.pysettings.star)
        self.score_image = self.font.render(score_str, True, self.text_color, self.pysettings.bg_color)
        
        # 将得分放在右上角
        self.score_rect = self.score_image.get_rect()
        self.score_rect.right = self.screen_rect.right - 20
        self.score_rect.top = 20
        
    def show_score(self):
        """在屏幕上显示得分"""
        self.screen.blit(self.score_image,self.score_rect)